1. Field of the Invention
The present invention is related to load distribution among adapter cards within a telecommunication switch. More particularly, the present invention is related to the distribution of network connections across adapter cards which operate in a xe2x80x9cleader/followerxe2x80x9d mode. The invention is particularly useful in internet protocol (IP) telephony switching environments.
2. Description of the Problem Solved
Load distribution is an important part of telecommunication switching. Numerous mechanisms exist to manage load distribution across trunk groups in traditional public switched telephone network (PSTN) systems. In these systems, distribution of calls across trunk""s and trunk groups is important in maintaining efficient switch operation. In most cases, an algorithm is executed by the computing module within the switch to determine the optimum load distribution for a given situation. Since these PSTN switches maintain circuit switched connections, in which the same connection is maintained from the beginning to the end of a call, the time involved in computing optimum load distribution is insignificant.
IP telephony is becoming increasingly important, as data traffic on the public telecommunication network increases. Load distribution is especially important in an IP telephony switch. Such a switch often acts as a gateway between an IP network and the PSTN or private networks. In such a switch, numerous digital trunk cards allow connections to the switch from the IP network. Load distribution across the trunk cards must be maintained. In current IP telephony switches, load distribution is maintained using a call forwarding method specified in the International Telecommunication Union H.323 standard. In a typical scenario, one digital trunk card within an internet trunk group (ITG) in a switch serves as a xe2x80x9cleader cardxe2x80x9d while other cards serve as xe2x80x9cfollower cards.xe2x80x9d Turning to FIG. 1, an initiating endpoint sends a setup message to the leader card within the ITG. The leader card responds with a call proceeding message. At 101 the leader card sends a facility message to the initiating endpoint redirecting the call to the appropriate follower card. The initiating endpoint then sends release complete message to the leader card and initiates a setup message 102 with the designated follower card. Call proceeding, alerting, and connect messages are then exchanged between the follower card and the initiating endpoint.
The above scenario results in even load distribution across internet trunk cards, however, the amount of time it takes to setup a call is excessive. The leader card maintains knowledge of the status and availability of follower cards within the internet trunk group by communicating with the computing module within the switch, and by exchanging packets with follower cards over the network. In addition, the leader card must communicate with the originating endpoint a significant amount of information about the follower card so that the follower card can completely take over the call. What is needed is a way for the leader card within the internet trunk group to quickly and directly determine the status of follower cards in the group, and redirect the call without sending so much information over the network, and without having to communicate with the computing module.
The present invention solves the above problems by providing an internal communication mechanism for leader and follower cards within a switch. Through the messaging of the invention, a leader card can perform load management functions and negotiate network connections through the follower cards so that an even connection distribution is established. The invention reduces call setup delay by reducing the need for the leader card to negotiate with the initiating endpoint over the network, and by minimizing interaction required with the central computing module in the switch.
According to the present invention, a method of communication is defined between leader and follower cards such that whenever a leader card receives a setup message from an initiating endpoint, a broadcast message is sent to one or more adapter cards in a multicast group of cards. Responses to the message include address information for the follower cards. Using these responses the leader card negotiates the network connection through a follower card so that an even connection distribution is established among available follower cards. The message exchange necessary to carry out the invention occurs directly between leader and follower cards, without spanning the IP network, and with little involvement of the central computing module. In the preferred embodiment the messages are in user datagram protocol (UDP) format. The broadcast and response messages include a message type field, a call ID field, and an IP address and port number field. The response message also includes a channel identification information field.
The invention is typically implemented using a computer program product for a switch. A computer program product includes a media with computer program code which causes the switch involved to perform the necessary operations. The computer program code is loaded into the switch through an input/output device and resides in memory while the switch is in operation. The type of switch in which the invention is implemented usually serves as a trunk interface to an IP network. Such a switch includes a computing module which executes the computer program code which controls the operation of the switch.
The switch also includes the various adapter cards necessary to implement the invention. These adapter cards may be part of a digital trunk controller or peripheral module. In any case they interface into the switch through a bus and each card includes a bus interface as well as a network interface. Additional computer program code or hardware on the adapter cards includes information on formatting and decoding the messages which are used to implement the invention.